using static TTEngine.Graphics.FontTTF;

namespace TTEngine.Graphics
{

    //TTF 是一种平台相关的特殊资源
    public interface ISystemTtfFont
    {
        string Name
        {
            get;
        }
        int Size
        {
            get;
        }

        SpriteData GetCharImage(int c, int border, bool mono);
        int GetCharWidth(int c);
    }

    public interface ISystemTtfFontFamily
    {
        string Name
        {
            get;
        }
        ISystemTtfFont GetFont(int fontsize);
    }
    public class PackedFontCharInfo
    {
        public int fontadv;
        public PackedTextureElement elem;
    }

    public interface IFont
    {
        int FontSize
        {
            get;
        }
        PackedTextureGroup PackGroup
        {
            get;
        }
        bool EnsureTextPacked(string text);

        void ApplyPackedTextureData();
        bool TryGetCharInfo(int c, out PackedFontCharInfo value);
    }



}
